Crowd sourced traffic reporting

ABSTRACT

A traffic reporting service may allow for the generation of more reliable and accurate traffic reports, maps, and forecasts based on various data types and sources. Data sources include public sector sources, private entities, and end users providing crowd sourced data. Crowd sourced data is collected, verified, and used to generate a traffic report which is displayed to a user via a computing device. A user may use various information presented in the traffic report to make informed decisions when choosing travel routes and a departure time to reach a desired destination.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation and claims the priority benefit of U.S. patent application Ser. No. 13/296,108 filed Nov. 14, 2011, which will issue as U.S. Pat. No. 8,718,910 on May 6, 2014, which claims the priority benefit of U.S. provisional application 61/413,473 filed Nov. 14, 2010 and U.S. provisional application 61/487,425 filed May 18, 2011, the disclosures of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally concerns traffic reporting. More particularly, the present invention relates to the use of crowd sourced data and other sources of traffic data to provide traffic reports, maps, and forecasts.

2. Description of the Related Art

The rapid worldwide growth in mobile phone traffic has corresponded to a rapid increase in smartphone use. Smartphones are expected to overtake the number of feature phones by the end of 2011. With a smartphone, a consumer may utilize an assortment of applications to obtain a variety of useful real-time information including traffic information.

Current traffic reporting applications rely on traditional traffic sources such as public sector and private entity sources. These applications typically do not consider crowd sourced data that can provide updated or real-time traffic data not otherwise available from traditional sources. One mobile application, called “Waze” (available from Waze Ltd.), automatically collects traffic data and road condition information from users as they drive. “Waze” relies primarily on crowd sourced data to present updated traffic information to users of the application. “Waze,” however, does not consider traditional traffic sources when presenting traffic information to its users.

There is a need in the art for traffic reporting technology that leverages a variety of traffic data, including crowd sourced data, to generate more accurate and reliable traffic reports, maps, and forecasts.

SUMMARY OF THE PRESENTLY CLAIMED INVENTION

Embodiments of the present invention allow for the generation of more reliable and accurate traffic reports, maps, and forecasts based on various data types and sources. Data sources include public sector sources, private entities, and end users providing crowd sourced data.

In a first claimed embodiment, a method for traffic reporting using crowd sourced data is claimed. Through this method crowd sourced data from a computing device associated with a user traversing a travel route is received. The crowd sourced data may include location data and speed data associated with the user. The crowd sourced data is then verified for timeliness. A traffic report is generated based on the crowd sourced data and is then displayed on the computing device.

In a second claimed embodiment, a system for generating a traffic report based on crowd sourced data is claimed. The system includes memory for storing crowd sourced data received from a computing device associated with a user traversing a travel route. The system also includes an application server. The application server verifies the timeliness of the crowd sourced data, generates a traffic report based on the crowd sourced data, and displays the traffic report on the computing device.

In a third claimed embodiment, a non-transitory computer-readable medium is claimed. The storage medium includes a computer program that is executable by a processor to perform a method for generating a traffic report. The method includes receiving crowd sourced data from a user traversing a travel route, the crowd sourced data including location data and speed data associated with the user, verifying timeliness of the crowd sourced data, generating a traffic report based on the crowd sourced data, and displaying the traffic report.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system used for generating a traffic report using crowd sourced data.

FIG. 2 illustrates a method for traffic reporting using crowd sourced data.

FIG. 3 illustrates a computing system that may be used to implement an embodiment of the present invention.

DETAILED DESCRIPTION

Embodiments of the present invention may provide a traffic reporting service that uses crowd sourced data to generate more accurate and complete traffic reports.

FIG. 1 illustrates a system that may be a system used for generating a traffic report using crowd sourced data. The system 100 of FIG. 1 includes user 110, computing device 120, information source 130, network 140, optional network server 150, application server 160, and database 170.

System 100 may include a number of users and computing devices that operate in conjunction with a traffic reporting service. User 110 may subscribe (e.g., create an account) or register with the traffic reporting service provided by application server 160 via computing device 120. Once user 110 has registered with the traffic reporting service, user 110 may perform a login operation (i.e., access account) and may access the traffic reporting service to receive traffic reports, forecasts, and maps, and alerts of traffic incidents and delays. User 110 may also create travel routes and obtain personalized traffic reports for the same. User 110 may also request access to and view live or historic feeds from particular traffic cameras.

When registering with the traffic reporting service, user 110 may be required to input or provide (via computing device 120) registration information or user data including but not limited to name, user ID, password address, phone number, e-mail address, birthday, age, and gender. User 110 may also provide other data (e.g., start and end points) relating to one or more traffic routes. User 110 may then receive personalized traffic reports for frequently traversed routes such as home to office, office to home, home to school, etc.

User 110 may also provide preferences such as a preference for a type of traffic information. For example, user 110 may indicate a preference to receive an alert of traffic incidents or delays that may appear on a frequently traversed route, a selected route, or current route. A user preference may also include a preference for or bookmark for a particular traffic camera or latest snapshot or video from a traffic camera.

User registration information, user preferences, and route information may be used to generate a profile of user 110 which may be used to customize traffic reports and alerts for user 110. For example, user 110 may indicate a desire to receive a traffic alert concerning a particular travel route, geographical location, or specific road or highway. User route data and profile information may be stored in database 170.

System 100 may include database 170 for storing data. Database 170 may store route information, profile information, traffic data from information sources 130, and other data for use with the traffic reporting service provided by application server 160. Database 170 may be separate from or integrated with application server 160. Database 170 may be a single database server or distributed amongst a series of servers. Database 170 may also store any updates to user data, route information, or traffic data received from/provided by user 110 or information sources 130.

The information sources 130 may be provided by various organizations (public or private entities) and in a variety of forms. The information sources 130 may include data sources related to traffic data (e.g., traffic speed, traffic flow) and as described in U.S. Pat. No. 7,221,287, which is incorporated herein by reference, or weather data such as forecasts. The information sources 130 may also include data sources related to newsworthy events or incidents such as school closings, election results, and other information that may be featured or relevant in a traffic report. The information sources 130 may require subscription or authentication for access and may be accessible via Telnet, FTP, or web services protocols. The information may be received from the information sources 130 in real-time or near real-time to allow for generation of an equally real-time or near real-time presentation. Information sources 130 may also include local memory storing previously received data or an antenna receiver in the likes of a GPS device that is actively or occasionally receiving data from a still separate source of data.

In an embodiment of the present invention utilizing traffic data specific to the San Francisco Bay area, for example, the information sources 130 may include one or more of the 511.org system (a collaboration of public agencies including the California Highway Patrol, Metropolitan Transportation Commission, and CAL TRANS), the California Highway Patrol (CHP) World Wide Web server, the PeMS system at the University of California at Berkeley, various public event listings, or a publicly or privately accessible user input mechanism. For weather data, the information sources 130 may include the National Weather Service among other weather information sources. Other data sources or alternative types of data sources (e.g., non-traffic and non-weather related sources) may be incorporated and utilized in various embodiments of the present invention.

Computing device 120 is inclusive of a general purpose computing device capable of accessing information over a network. Computing device 120 may be any computing device known in the art such as a workstation, laptop computer, net book computer, tablet computer, mobile device, cellular telephone, or the like that can communicate over network 140. Computing device 120 may include software and/or hardware capable of sending, receiving, and processing data such as crowd sourced data, traffic data, or user profile data. Computing device 120 may receive data from user 110 and send the data over network 140 to application server 160 for processing. Computing device 120 may also offer location-based information such as that generated through cellular network base stations, IP network access, or GPS data. Computing device 120 may include certain components as illustrated in FIG. 3.

Network 140 is inclusive of any communication known in the art such as the Internet, Local Area Network (LAN), Wide Area Network (WAN), intranet, extranet, private network, or other network. Application server 160 may be accessed via optional network server 150. Network server 150 may receive and process data and/or requests from computing device 120. For example, user 110 may request and provide data to become a registered subscriber with the traffic reporting service provided by application server 160. Processing the data and/or request may include sending data to application server 160, receiving a response from application server 160, and sending a response or data to network server 150. Network server 150 may then forward the response or data to computing device 120.

Application server 160 may be implemented in a general computing device that otherwise communicates with database 170 and network server 150. An example of such a device is the general computing system illustrated in FIG. 3. One or more software applications or modules may be stored in memory and executable by a processor (not shown) at application server 160. The present traffic reporting service may be implemented by one or more processors that execute instructions stored in one or more memory mediums. The executed instructions may result in the processor(s) generating and providing one or more graphical interfaces.

FIG. 2 illustrates a method for traffic reporting using crowd sourced data. The steps identified in FIG. 2 (and the order thereof) are exemplary and may include various alternatives, equivalents, or derivations thereof including but not limited to the order of execution of the same. The steps of the method of FIG. 2 (and its various alternatives) may be embodied in hardware or software including a non-transitory computer-readable storage medium (e.g., an optical disc or memory card) having instructions executable by a processor of a computing device. A user may launch or activate the method of FIG. 2 by opening or activating an application in a computing device such as a mobile device.

At step 210, crowd sourced data is received at application server 160 from a computing device associated with a user. A user may authorize the collection of crowd sourced data via a mobile based computing device 120 or one that otherwise generates location based data (e.g., GPS, base station identification, triangulation data, etc.). Computing device 120 may receive user authorization and transmit collected crowd sourced data to application server 160 for processing by way of a user 110 offering certain permissions on the device 120.

Crowd sourced data may be an indicator of traffic conditions when it includes traffic data about a non-sensored thoroughfare or roadway that is not available by another means. Crowd sourced data may include data collected by active means as well as passive means. Passive crowd sourced data may include, for example, non-personally identifiable data such as location information, geographic coordinate data (e.g., latitude/longitude), timestamp data, heading information, and floating car data, which is sometimes referred to as floating cellular data. Location may be determined by any positioning technology known in the art such as global navigation satellite systems (e.g., GPS or GNSS), real-time locating systems, or local positioning systems. Floating car data may include speed data, direction of travel information, time information, or other information received from a computing device (e.g., mobile phone). Information may also include electronic toll collection data and number plate recognition information.

Active data may include data actively provided by a user such as incident data concerning a traffic event or delay. A user may transmit traffic information (i.e., incident report/incident data) to application server 160. An incident report/incident data may include location information, time of occurrence, end time, or highway and milepost information for any type of incident such as an accident, road hazard, road work, street or highway closure, or any other condition potentially affecting traffic. An incident may be planned (e.g., road work) or unplanned. Unplanned incidents may include crashes with or without injuries, overturned vehicles, disabled vehicles, or roadway obstructions (e.g., by pedestrians, animals, debris).

Traffic data from information sources 130 may also be received at application server 160. Traffic data from information sources may come from public agencies (e.g., U.S. Department of Transportation, local police departments) or private entities (e.g., Inrix, TrafficCast, Clear Channel). Traffic data may include incident data, speed information, flow information, or information from traffic cameras or videos. Speed and flow information may be obtained from various kinds of detector equipment along highways or roadways such as loop detectors and other magnetic sensors, radar detectors, toll tag readers, Bluetooth traffic monitoring devices, or video vehicle detectors. Data from traffic cameras and video cameras may be obtained from roadside cameras, in-vehicle cameras, or the like, and may capture live videos, snapshots, and images of actual driving conditions. In addition to providing a glimpse of real-time traffic conditions, these cameras may also show the effects of weather on traffic.

At step 220, the received crowd sourced data is verified for timeliness to optimize latency and ensure the relevance of the data. To obtain the most accurate and complete depiction of actual traffic conditions, the most recent, up-to-date crowd sourced data is desired. For example, crowd sourced data that is 4 hours old may no longer affect traffic and be irrelevant. Application server 160 may process the crowd sourced data and share the crowd sourced data with other users in the network. The received crowd sourced data may include location information and speed information. Location data may be collected from computing device 120 and application server 160 may determine a sampling interval t.sub.s and a transmission interval t.sub.t associated with each piece of crowd source data. t.sub.s is the time between samples while t.sub.t is the time between transmission of the samples. The sampling and transmission intervals t.sub.s and t.sub.t may be set ahead of time, or may vary based on the time of day, the observed speed of the computing device 120 over a recent time interval, or the available battery life of the computing device 120 to avoid inadvertently over utilizing low battery power. Alternately, the application server 160 may send instructions to the computing device 120 to alter t.sub.s and t.sub.t depending upon various needs. Adjusting t.sub.s and t.sub.t allows a trade-off between the quality of the resulting data (frequency, timeliness) and the resources expanded in terms of battery usage to collect more frequent samples on the computing device 120, and the transmission costs involved in transmitting information at more frequent intervals.

The horizontal accuracy of the position information may also be transmitted together with the location coordinates. If the horizontal accuracy is not readily available, it may be substituted with a default value. The position and its accuracy may then be compared with proximate road segments to determine which road segment the computing device 120 is most likely to be traveling on. If the heading or the most recent position information is available, the direction of travel may be compared with the direction of road segments. Recent positions of the computing device 120 are likely to be situated on the same or adjoining road segments, and presumably in the same direction of travel. Such reasonable tests may be used to determine if particular positions represent erroneous data and need to be filtered out.

Compared to other sourced of data (e.g., traffic data from public and/or private entities), crowd sourced data (e.g., GPS location and speed data) may have the lowest latency since the maximum latency is bounded by t.sub.t-t.sub.s and there are no intermediaries between the computing device 120 and application server 160.

At step 230, application server 160 generates a traffic report based on the crowd sourced data. In one embodiment application server 160 generates the traffic report based on traffic data received from information sources 130 in addition to crowd source data. The traffic data from the information sources 130 may include real-time speed data, flow information, forecasted or historical data, or other pertinent traffic information for a travel route specified by user 110, such as a frequently traveled route or current route. Besides traffic data and crowd sourced data, a generated traffic report may also be based on other relevant information such as weather information or forecasts, or newsworthy events such as concerts, sporting events, street closures, or protests.

A generated traffic report may include point-to-point trip times, trip time predictions for a travel route, and recommended departure times for various times and days of the week. Application server 160 may calculate point-to-point trip times based on starting and end points provided by user 110. When calculating point-to-point trip times, a starting point may be the real-time location of computing device 120. Application server 160 may also calculate or predict trip times for a particular travel route based on crowd sourced data, traffic data from information sources 130, or combinations of the same.

Based on traffic information received from various sources (e.g., crowd sourced data and/or traffic data) application server 160 may further calculate and recommend a departure time for timely traversing a route when user 110 has indicated a desired arrival time. Application server 160 may also calculate and recommend departure times for different days or times of the week based on historical or forecasted traffic information received from information sources 130.

At step 240, application server 160 displays the traffic report on computing device 120. A generated traffic report that is displayed at step 240 may convey a variety of traffic information in different forms or formats. A traffic report may be textual or graphical or include combinations of the same. A traffic report, for example, may be generated and displayed in the form of a map of particular area and may include textual and/or graphical information about traffic conditions, incidents, or hazards along a travel route. A traffic report may also be generated and displayed in a textual/list format showing, for example, frequently traveled routes, the predicted travel time or recommended departure time for each route, and any notable traffic conditions or incidents affecting the route. Travel times or departure times for a particular route may be also be displayed in graphical form with time of day on the x-axis plotted against travel time in minutes on the y-axis. User 110 may use the various information presented in the traffic report to make an informed decision about which travel route to take and/or the best departure time to reach a destination. The report may be three-dimensional, include areas for advertising, or be subject to multiple points of view that can be rotated through touch screen controls or multi-finger touch/pinch control.

Application server 160 may also generate a traffic alert. Where user 110 has indicated a preference to receive a traffic alert for a particular travel route or geographical location, application server may generate a traffic alert based on received crowd sourced data and/or traffic data received from information sources 130. Application server 160 may transmit a traffic alert (e.g., via Short message service (SMS) message, e-mail message, or the like) to computing device 120.

FIG. 3 illustrates a computing system 300 that may be used to implement the present technology. System 300 of FIG. 3 may be used to implement computing device 120, network server 150, application server 160, and database 170 in the context of the system of FIG. 1. The computing system 300 of FIG. 3 includes one or more processors 310 and memory 320. Main memory 320 stores, in part, instructions and data for execution by processor 310. Main memory 320 can store the executable code when in operation. Main memory 320 may also include a database such as database 170 illustrated in FIG. 1. The system 300 of FIG. 3 further includes a mass storage device 330, portable storage medium drive(s) 340, output devices 350, user input devices 360, a graphics display 370, and peripheral devices 380.

The components shown in FIG. 3 are depicted as being connected via a single bus 390. The components, however, may be connected through one or more data transport means. For example, processor unit 310 and main memory 320 may be connected via a local microprocessor bus, and the mass storage device 330, peripheral device(s) 380, portable storage device 340, and display system 370 may be connected via one or more input/output (I/O) buses.

Mass storage device 330, which may be implemented with a magnetic disk drive or an optical disk drive, is a non-volatile storage device for storing data and instructions for use by processor unit 310. Mass storage device 330 may store the system software for implementing embodiments of the present invention for purposes of loading software into main memory 320.

Portable storage device 340 operates in conjunction with a portable nonvolatile storage medium, such as a floppy disk, compact disk or Digital video disc, to input and output data and code to and from the computer system 300 of FIG. 3. The system software for implementing embodiments of the present invention may be stored on such a portable medium and input to the computer system 300 via the portable storage device 340.

Input devices 360 provide a portion of a user interface. Input devices 360 may include an alpha-numeric keypad, such as a keyboard, for inputting alpha-numeric and other information, or a pointing device, such as a mouse, a trackball, stylus, or cursor direction keys. Additionally, the system 300 as shown in FIG. 3 includes output devices 350. Examples of suitable output devices include speakers, printers, network interfaces, and monitors.

Display system 370 may include a liquid crystal display (LCD) or other suitable display device. Display system 370 may receive textual and graphical information, and process the information for output to the display device.

Peripherals 380 may include any type of computer support device to add additional functionality to the computer system. For example, peripheral device(s) 380 may include a modem or a router.

The components contained in the computing system 300 of FIG. 3 are those typically found in computer systems that may be suitable for use with embodiments of the present invention and are intended to represent a broad category of such computer components that are well known in the art. Thus, the computing system 300 of FIG. 3 may be a personal computer, hand held computing device, telephone, mobile computing device, workstation, server, minicomputer, mainframe computer, or any other computing device. The computer may also include different bus configurations, networked platforms, multi-processor platforms, etc. Various operating systems may be used including Unix, Linux, Windows Mobile, iOS, or Android. The steps of the method of FIG. 2 (and its various alternatives) may be performed by a module or engine stored on a computer readable storage medium (e.g., optical disc, memory card, etc.) comprising instructions executable by a processor of a computing device.

The above description is illustrative and not restrictive. Many variations of the invention will become apparent to those of skill in the art upon review of this disclosure. While the present invention has been described in connection with a variety of embodiments, these descriptions are not intended to limit the scope of the invention to the particular forms set forth herein. To the contrary, the present descriptions are intended to cover alternatives, modifications, and equivalents as may be included within the spirit and scope of the invention as defined by the appended claims and otherwise appreciated by one of ordinary skill in the art. 

What is claimed is:
 1. A method for recommending a departure time, the method comprising: receiving, at a network interface: crowd sourced data from a user device, wherein the crowd sourced data is associated with a plurality of other users traversing a plurality of travel routes, and traffic data from one or more information sources, the traffic data associated with the plurality of travel routes; receiving, at an user interface of the user device, user input including a destination and an arrival time; executing instructions stored in memory, by a processor, to: calculate a trip time for a travel route associated with a starting point and an ending point, wherein the starting point is a real-time location of the user device and the ending point is the received destination, and wherein the trip time is based on the received arrival time, the crowd sourced data for the travel route, and the traffic data for the travel route, and provide the user with a recommended departure time at the user device, wherein the recommended departure time is determined based on the calculated trip time and the received arrival time.
 2. The method of claim 1, wherein the execution of instructions by the processor further: calculates additional trip times for the travel route, wherein each additional trip time is calculated based on a respective arrival time that differs from the received arrival time, the crowd sourced data for the travel route, and the traffic data for the travel route.
 3. The method of claim 2, wherein the execution of instructions by the processor further: provides the user with alternate recommended departure times at the user device, wherein each alternate recommended departure time is determined based on a respective additional trip time.
 4. The method of claim 1, wherein the execution of instructions by the processor further: generating a traffic report based on the crowd sourced data and the traffic data, wherein the traffic report is associated with the travel route, and wherein the traffic report includes the trip time and the recommended departure time.
 5. The method of claim 4, wherein the execution of instructions by the processor further: displays the traffic report on the user device.
 6. The method of claim 1, wherein the crowd sourced data includes: passive data collected about users traversing the travel route, wherein the passive data includes location, heading, and speed data each respectively associated with one or more other users traversing the travel route.
 7. The method of claim 6, wherein the crowd sourced data further includes: active data provided by the one or more other users that is associated with a planned or unplanned traffic incident, wherein the active data includes a location of the incident and a time associated with the incident.
 8. The method of claim 1, wherein the information source is a public sector source.
 9. The method of claim 1, wherein the information source is a private sector source.
 10. The method of claim 1, wherein calculating the trip time is further based on weather data associated with the travel route, wherein the weather data is received, at the network interface.
 11. The method of claim 1, wherein calculating the trip time is further based on a scheduled public event affecting the travel route.
 12. The method of claim 11, wherein the scheduled public event includes a sporting event.
 13. The method of claim 11, wherein the scheduled public event includes a road closure on the travel route.
 14. The method of claim 11, wherein the scheduled public event includes a concert. 